calendar: Fix drawing order for windows
authorBenjamin Otte <otte@redhat.com>
Sat, 4 Sep 2010 17:09:13 +0000 (19:09 +0200)
committerBenjamin Otte <otte@redhat.com>
Sun, 26 Sep 2010 13:11:35 +0000 (15:11 +0200)
gtk/gtkcalendar.c

index 7f214e12b4fcc0a9de991c732c589465831d87eb..8336880d9b840f17939cc189efdb4abc118a09fe 100644 (file)
@@ -2880,12 +2880,20 @@ gtk_calendar_expose (GtkWidget      *widget,
 
   if (gtk_widget_is_drawable (widget))
     {
-      GdkWindow *window;
-
       cr = gdk_cairo_create (event->window);
       gdk_cairo_region (cr, event->region);
       cairo_clip (cr);
 
+      if (event->window == gtk_widget_get_window (widget))
+       {
+          gtk_cairo_paint_shadow (gtk_widget_get_style (widget), cr,
+                            gtk_widget_get_state (widget), GTK_SHADOW_IN,
+                           widget, "calendar",
+                           0, 0,
+                            gtk_widget_get_allocated_width (widget),
+                            gtk_widget_get_allocated_height (widget));
+       }
+
       if (event->window == priv->main_win)
        calendar_paint_main (calendar, cr);
       
@@ -2902,17 +2910,6 @@ gtk_calendar_expose (GtkWidget       *widget,
       if (event->window == priv->week_win)
        calendar_paint_week_numbers (calendar, cr);
 
-      window = gtk_widget_get_window (widget);
-      if (event->window == window)
-       {
-          gtk_cairo_paint_shadow (gtk_widget_get_style (widget), cr,
-                            gtk_widget_get_state (widget), GTK_SHADOW_IN,
-                           widget, "calendar",
-                           0, 0,
-                            gtk_widget_get_allocated_width (widget),
-                            gtk_widget_get_allocated_height (widget));
-       }
-
       cairo_destroy (cr);
     }